1. Field of the Invention
This invention relates to data processing systems. More particularly, this invention relates to data processing systems supporting nested interrupts and the control of the priority level of interrupts within such nested interrupt systems.
2. Description of the Prior Art
It is known to provide data processing systems supporting nested interrupts. Within such systems an already active interrupt may be pre-empted by a new interrupt of a higher priority. This can result in several levels of nested interrupts arising due to repeated pre-emption by higher priority later arriving interrupts. Such systems are well suited to the efficient management of interrupt driven processing and in particular allow higher priority interrupts to be serviced more rapidly. This type of behaviour makes these systems particularly well suited to embedded and deeply embedded processing environments in which real time or near real time operation is desired. Within such systems, the time taken before processing can start on a high priority interrupt is often a critical and limiting performance characteristic.
Within such nested systems it is also desirable that it should be possible to dynamically alter priority levels associated with different interrupts. Such alteration allows the system to respond to changing circumstances which may result in a particular interrupt having an increased or decreased level of priority relative to other interrupts. An example of such a requirement would be when a particular interrupt is associated with the determination of a result, which must be available by a particular fixed deadline, and as that deadline approaches, it becomes more urgent that the interrupt concerned should be serviced and accordingly its priority level be raised.